/*
 Copyright (C) 2008  Maurizio Monticelli

 This program is free software; you can redistribute it and/or modify it under the terms of the 
 GNU General Public License as published by the Free Software Foundation; either version 2 of the 
 License, or (at your option) any later version.

 This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without 
 even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General 
 Public License for more details.

 You should have received a copy of the GNU General Public License along with this program; if not, write 
 to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA 
*/

package ch.justdoit.andriodrpncalc.model.command;

import java.util.Stack;

import ch.justdoit.andriodrpncalc.model.Model;
import ch.justdoit.andriodrpncalc.model.Functions.Basic;

public class MinusCommand extends Abstract2Command {

	public MinusCommand(Model _model) {
		super(_model);
		mCommandName = "-";
		mExpression = "-";
	}

	@Override
	public Stack<String> doExpressionOperation() {
		return doOperatorExpressionOperation();
	}

	@Override
	public void doNumberOperation() {
		mModel.stack.Put( Basic.Substrak(numB.getDouble(), numA.getDouble()) );
	}
	
	@Override
	public ICommand createNewInstance() {		
		return new MinusCommand(mModel);
	}


}
